﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace lbjson
{
    public enum JsonToken
    {
        None = 0,

        /// <summary>
        /// object开始的标志. 左大括号 { 
        /// </summary>
        StartObject=1,
        
        /// <summary>
        /// 数组开始的标志. 左中括号 [
        /// </summary>
        StartArray=2,

        /// <summary>
        /// 构造器开始的标志. 字母 new
        /// </summary>
        StartConstructor=3,

        /// <summary>
        /// 对象属性名字，.
        /// </summary>
        PropertyName=4,

        /// <summary>
        /// 注释.
        /// </summary>
        Comment=5,

        /// <summary>
        /// 暂时不知道对应的啥？newtonsoft中有
        /// </summary>
        Raw=6,

        /// <summary>
        /// 整数.
        /// </summary>
        Integer=7,

        /// <summary>
        /// 浮点数.
        /// </summary>
        Float=8,

        /// <summary>
        /// 字符串.
        /// </summary>
        String=9,

        /// <summary>
        /// 布尔值.
        /// </summary>
        Boolean=10,

        /// <summary>
        /// 空值. null
        /// </summary>
        Null=11,

        /// <summary>
        /// 未定义. undefine
        /// </summary>
        Undefined=12,

        /// <summary>
        /// object结束的标志. 右大括号 }
        /// </summary>
        EndObeject=13,

        /// <summary>
        /// 数组结束的标志. 右中括号 ]
        /// </summary>
        EndArray=14,

        /// <summary>
        /// 构造器结束的标志. 右小括号)
        /// </summary>
        EndConstructor=15,

        /// <summary>
        /// 日期.
        /// </summary>
        Date=16,

        /// <summary>
        /// Byte 数据.
        /// </summary>
        Bytes = 17
    }
}
